Code Extraction Algorithms which Unify Slicing and Concept Assignment

نویسندگان

  • Mark Harman
  • Nicolas E. Gold
  • Robert M. Hierons
  • David W. Binkley
چکیده

One approach to reverse engineering is to partially automate sub component extraction, improvement and subsequent recombination. Two previously proposed automated techniques for supp orting this activity are slicing and concept assignment. However, neither is directly applicable in isolation; slicing criteria (sets of program variables) are simply too low level in many cases, while conc eptassignment typically fails to produc e exe cutable sub components. This paper intr oduc esa uni cation of slicing and concept assignment which exploits their combined advantages, while over coming their individual we aknesses. Our `conc ept slices' are extracted using high level criteria, while producing executable subprograms. The paper intr oduc esthree ways of combining slicing and conc ept assignment and algorithms for each. The applic ationof the conc eptslicing algorithms is illustrated with a case study from a large nancial organisation.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Unifying program slicing and concept assignment for higher-level executable source code extraction

Both program slicing and concept assignment have been proposed as source code extraction techniques. Unfortunately, each has a weakness which prevents wider application. For slicing, the extraction criterion is expressed at a very low level; constructing a slicing criterion requires detailed code knowledge which is often unavailable. The concept assignment extraction criterion is expressed at t...

متن کامل

Program Slicing Using Weakest Preconditions

Program slices have long been used as an aid to program understanding, especially in maintenance activities. Most slicing methods involve data and control flow analysis to determine what statements might affect a set of variables. Here, we develop a more precise slicing concept, called p-slices, defined using Dijkstra’s weakest precondition (wp), to determine which statements will affect a spec...

متن کامل

Program Slicing for Refactoring: Static Slicer using Dynamic Analyser

Refactoring is the process of changing the code of the software such that its internal design is improved without altering its observable behavior. Method Extraction is the process of separating out a subset of method’s statements into another method and replacing their occurrence in the original method with a call to this new method. Method extraction is a classical problem to improve the modu...

متن کامل

Genetic Programming for Reverse Engineering (Invited Paper)

This paper overviews the application of Search Based Software Engineering (SBSE) to reverse engineering with a particular emphasis on the growing importance of recent developments in genetic programming and genetic improvement for reverse engineering. This includes work on SBSE for remodularisation, refactoring, regression testing, syntax-preserving slicing and dependence analysis, concept assi...

متن کامل

Refactoring via program slicing and sliding

Mark Weiser’s observation that “programmers use slices when debugging”, back in 1982, started a new field of research. Program slicing, the study of meaningful subprograms that capture a subset of an existing program’s behaviour, aims at providing programmers with tools to assist in a variety of software development and maintenance activities. Two decades later, the work leading to this thesis ...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2002